from django.db import models

from myuser.models import MyUser
from prj004.models.models import CreateTimeModel
from prj004.models.info import Info


class History(CreateTimeModel):
    owner = models.ForeignKey(MyUser, on_delete=models.CASCADE, related_name='prj004_history')

    info = models.OneToOneField(Info, related_name='history', on_delete=models.CASCADE)

    history_wu = models.BooleanField(blank=True, default=False, verbose_name='无', help_text='无')

    history_duonang = models.BooleanField(blank=True, default=False, verbose_name='多囊卵巢综合征', help_text='多囊卵巢综合征')

    history_gaomi = models.BooleanField(blank=True, default=False, verbose_name='高泌乳素血症', help_text='高泌乳素血症')

    history_yichang = models.BooleanField(blank=True, default=False, verbose_name='异常子宫出血', help_text='异常子宫出血')

    history_penqiang = models.BooleanField(blank=True, default=False, verbose_name='盆腔炎性疾病', help_text='盆腔炎性疾病')

    history_xianji = models.BooleanField(blank=True, default=False, verbose_name='子宫腺肌症', help_text='子宫腺肌症')

    history_yiwei = models.BooleanField(blank=True, default=False, verbose_name='子宫内膜异位症', help_text='子宫内膜异位症')

    history_jiliu = models.BooleanField(blank=True, default=False, verbose_name='子宫肌瘤', help_text='子宫肌瘤')

    history_jixing = models.BooleanField(blank=True, default=False, verbose_name='子宫畸形', help_text='子宫畸形')

    history_jineng = models.BooleanField(blank=True, default=False, verbose_name='宫颈机能不全', help_text='宫颈机能不全')

    history_zonghe = models.BooleanField(blank=True, default=False, verbose_name='干燥综合征', help_text='干燥综合征')

    history_langchuang = models.BooleanField(blank=True, default=False, verbose_name='系统性红斑狼疮', help_text='系统性红斑狼疮')

    history_guanjie = models.BooleanField(blank=True, default=False, verbose_name='类风湿性关节炎', help_text='类风湿性关节炎')

    history_jizhu = models.BooleanField(blank=True, default=False, verbose_name='强直性脊柱炎', help_text='强直性脊柱炎')

    history_zuzhi = models.BooleanField(blank=True, default=False, verbose_name='未分化结缔组织病', help_text='未分化结缔组织病')

    history_kanglin = models.BooleanField(blank=True, default=False, verbose_name='抗磷脂抗体综合征', help_text='抗磷脂抗体综合征')

    history_jiajian = models.BooleanField(blank=True, default=False, verbose_name='甲减', help_text='甲减')

    history_jiakang = models.BooleanField(blank=True, default=False, verbose_name='甲亢', help_text='甲亢')

    history_tangniao = models.BooleanField(blank=True, default=False, verbose_name='糖尿病', help_text='糖尿病')

    history_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='既往史-其他', help_text='既往史-其他')

    hobby_wu = models.BooleanField(blank=True, default=False, verbose_name='无', help_text='无')

    hobby_yiyan = models.BooleanField(blank=True, default=False, verbose_name='主动/被动吸烟', help_text='主动/被动吸烟')

    hobby_yinjiu = models.BooleanField(blank=True, default=False, verbose_name='□饮酒', help_text='□饮酒')

    hobby_aoye = models.BooleanField(blank=True, default=False, verbose_name='熬夜（23：00以后睡）', help_text='熬夜（23：00以后睡）')

    hobby_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='特殊嗜好-其它', help_text='特殊嗜好-其它')

    TILI_CHOICES = (
        ('好', '好'),
        ('一般', '一般'),
        ('易疲倦', '易疲倦')
    )
    tili = models.CharField(max_length=4, choices=TILI_CHOICES, blank=True, null=True, verbose_name='体力状况', help_text='体力状况')

    ZHIYE_TILI_CHOICES = (
        ('重体力劳动（如：搬运工、清洁工、农场工人、畜牧场工人等）', '重体力劳动（如：搬运工、清洁工、农场工人、畜牧场工人等）'),
        ('中体力劳动（如：家政服务人员、服务生、厨师、护士等）', '中体力劳动（如：家政服务人员、服务生、厨师、护士等）'),
        ('轻体力劳动（如：教师、美容美发师、批发商、职员等）', '轻体力劳动（如：教师、美容美发师、批发商、职员等）'),
        ('久坐式的工作（如：收银员、出纳员、接线员、秘书等）', '久坐式的工作（如：收银员、出纳员、接线员、秘书等）')
    )
    zhiye_tili = models.CharField(max_length=40, choices=ZHIYE_TILI_CHOICES, blank=True, null=True, verbose_name='职业体力活动', help_text='职业体力活动')

    is_duanlian = models.BooleanField(blank=True, default=False, verbose_name='体育锻炼', help_text='体育锻炼')

    IS_DUANLIAN_PIN_CHOICES = (
        ('很少（≤1次/周）', '很少（≤1次/周）'),
        ('偶尔（≤3次/周）', '偶尔（≤3次/周）'),
        ('经常（≥4次 / 周）', '经常（≥4次 / 周）'),
    )
    is_duanlian_pin = models.CharField(max_length=50, choices=IS_DUANLIAN_PIN_CHOICES, blank=True, null=True, verbose_name='体育锻炼-频次', help_text='体育锻炼-频次')

    IS_DUANLIAN_QIANG_CHOICES = (
        ('一般(少量出汗，心率≤120次/分)', '一般(少量出汗，心率≤120次/分)'),
        ('高强度(大汗淋漓，心率>120次/分)', '高强度(大汗淋漓，心率>120次/分)'),
    )
    is_duanlian_qiang = models.CharField(max_length=50, choices=IS_DUANLIAN_QIANG_CHOICES, blank=True, null=True, verbose_name='体育锻炼-强度', help_text='体育锻炼-强度')

    is_jianfei = models.BooleanField(blank=True, default=False, verbose_name='减肥情况', help_text='减肥情况')

    is_jianfei_time = models.IntegerField(blank=True, null=True, verbose_name='减肥情况-时长', help_text='减肥情况-时长')

    is_jianfei_way_yun = models.BooleanField(blank=True, default=False, verbose_name='运动减肥', help_text='运动减肥')
    is_jianfei_way_jie = models.BooleanField(blank=True, default=False, verbose_name='节食减肥', help_text='节食减肥')
    is_jianfei_way_yao = models.BooleanField(blank=True, default=False, verbose_name='药物减肥', help_text='药物减肥')

    is_jianfei_way_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='减肥情况-方式其他', help_text='减肥情况-方式其他')

    FIRST_TIME_CHOICES = (
        ('10岁以前', '10岁以前'),
        ('11岁以后', '11岁以后'),
        ('14岁以后', '14岁以后'),
        ('16岁以后', '16岁以后'),
    )
    first_time = models.CharField(max_length=6, choices=FIRST_TIME_CHOICES, blank=True, null=True, verbose_name='月经初潮年龄', help_text='月经初潮年龄')
    first_time_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='月经初潮年龄-其他', help_text='月经初潮年龄-其他')

    is_guilv = models.BooleanField(blank=True, default=False, verbose_name='月经周期-是否规律', help_text='月经周期-是否规律')

    GUILV_RIGHT_CHOICES = (
        ('21-25天', '21-25天'),
        ('26-30天', '26-30天'),
        ('31-35天', '31-35天')
    )
    guilv_right = models.CharField(max_length=8, blank=True, null=True, choices=GUILV_RIGHT_CHOICES, verbose_name='尚规律', help_text='尚规律')

    GUILV_WRONG_CHOICES = (
        ('或1月多次', '或1月多次'),
        ('1-2个月1行', '1-2个月1行'),
        ('2-3个月1行', '2-3个月1行'),
        ('3-4个月1行', '3-4个月1行'),
        ('4-6个月1行', '4-6个月1行'),
        ('＞6个月1行', '＞6个月1行'),
    )
    guilv_wrong = models.CharField(max_length=8, choices=GUILV_WRONG_CHOICES, blank=True, null=True, verbose_name='不规律', help_text='不规律')

    TOTAL_DAYS_CHOICES = (
        ('≤2天', '≤2天'),
        ('3-7天', '3-7天'),
        ('7日以上甚至半月', '7日以上甚至半月')
    )
    total_days = models.CharField(max_length=10, choices=TOTAL_DAYS_CHOICES, blank=True, null=True, verbose_name='行经天数', help_text='行经天数')

    total_days_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='行经天数-其他', help_text='行经天数-其他')

    QUANTITY_CHOICES = (
        ('出血量中等，每天约需2-4张卫生巾', '出血量中等，每天约需2-4张卫生巾'),
        ('出血量多，每天约需5-10张卫生巾', '出血量多，每天约需5-10张卫生巾'),
        ('出血量极多，每天多于10张卫生巾', '出血量极多，每天多于10张卫生巾'),
        ('经量少，每天少于1张卫生巾', '经量少，每天少于1张卫生巾'),
        ('经量极少，几乎不用卫生巾，用护垫即可', '经量极少，几乎不用卫生巾，用护垫即可')
    )
    quantity = models.CharField(max_length=20, choices=QUANTITY_CHOICES, blank=True, null=True, verbose_name='出血量', help_text='出血量')

    quantity_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='出血量-其他', help_text='出血量-其他')

    BLOOD_CHOICES = (
        ('淡红', '淡红'),
        ('鲜红', '鲜红'),
        ('暗红', '暗红'),
        ('紫红', '紫红'),
        ('紫黯', '紫黯'),
        ('紫黑', '紫黑'),
        ('褐色', '褐色')
    )
    blood = models.CharField(max_length=4, choices=BLOOD_CHOICES, blank=True, null=True, verbose_name='出血颜色', help_text='出血颜色')

    blood_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='出血颜色-其他', help_text='出血颜色-其他')

    BLOOD_TWO_CHOICES = (
        ('无血块', '无血块'),
        ('偶有血块', '偶有血块'),
        ('夹少量小血块', '夹少量小血块'),
        ('夹较大血块', '夹较大血块'),
        ('经常出现血块', '经常出现血块'),
        ('其他', '其他')
    )
    BLOCK_ONE_CHOICES = (
        ('正常', '正常'),
        ('粘稠', '粘稠'),
        ('清稀', '清稀'),
    )
    block_one = models.CharField(max_length=8, choices=BLOCK_ONE_CHOICES, blank=True, null=True, verbose_name='出血质地-1', help_text='出血质地-1')
    block_two = models.CharField(max_length=8, choices=BLOOD_TWO_CHOICES, blank=True, null=True, verbose_name='出血质地-2', help_text='出血质地-2')
    block_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='出血质地-其他', help_text='出血质地-其他')

    BLOOD_CHARACTER_CHOICES = (
        ('顺畅', '顺畅'),
        ('势急暴下', '势急暴下'),
        ('淋漓不断', '淋漓不断'),
        ('点滴即净', '点滴即净'),
    )
    character = models.CharField(max_length=6, choices=BLOOD_CHARACTER_CHOICES, blank=True, null=True, verbose_name='出血特点', help_text='出血特点')

    character_qita = models.CharField(max_length=50, blank=True, null=True, verbose_name='出血特点-其他', help_text='出血特点-其他')

    menstruation_is_accompany = models.BooleanField(default=False, blank=True, verbose_name='经期是否伴随症状', help_text='经期是否伴随症状')

    menstruation_spirit_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_spirit_fali = models.BooleanField(default=False, blank=True, verbose_name='神疲乏力', help_text='神疲乏力')

    menstruation_spirit_jiao = models.BooleanField(default=False, blank=True, verbose_name='紧张焦虑', help_text='紧张焦虑')

    menstruation_spirit_yiyu = models.BooleanField(default=False, blank=True, verbose_name='精神抑郁', help_text='精神抑郁')

    menstruation_spirit_yinu = models.BooleanField(default=False, blank=True, verbose_name='烦躁易怒', help_text='烦躁易怒')

    menstruation_spirit_tanxi = models.BooleanField(default=False, blank=True, verbose_name='时欲叹息', help_text='时欲叹息')

    menstruation_spirit_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='精神情绪-其他', help_text='精神情绪-其他')

    menstruation_sizhi_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_sizhi_weihan = models.BooleanField(default=False, blank=True, verbose_name='畏寒肢冷', help_text='畏寒肢冷')

    menstruation_sizhi_shouzu = models.BooleanField(default=False, blank=True, verbose_name='手足心热', help_text='手足心热')

    menstruation_sizhi_suan = models.BooleanField(default=False, blank=True, verbose_name='腰膝酸软', help_text='腰膝酸软')

    menstruation_sizhi_tong = models.BooleanField(default=False, blank=True, verbose_name='腰痛如折', help_text='腰痛如折')

    menstruation_sizhi_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='四肢-其他', help_text='四肢-其他')

    menstruation_head_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_head_chuo = models.BooleanField(default=False, blank=True, verbose_name='面部痤疮', help_text='面部痤疮')

    menstruation_head_zhong = models.BooleanField(default=False, blank=True, verbose_name='面浮肢肿', help_text='面浮肢肿')

    menstruation_head_kouku = models.BooleanField(default=False, blank=True, verbose_name='口苦', help_text='口苦')

    menstruation_head_kougan = models.BooleanField(default=False, blank=True, verbose_name='口干', help_text='口干')

    menstruation_head_touyun = models.BooleanField(default=False, blank=True, verbose_name='头晕', help_text='头晕')

    menstruation_head_toutong = models.BooleanField(default=False, blank=True, verbose_name='头痛', help_text='头痛')

    menstruation_head_touchen = models.BooleanField(default=False, blank=True, verbose_name='头沉重', help_text='头沉重')

    menstruation_head_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='头面-其他', help_text='头面-其他')

    menstruation_fu_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_fu_fanmen = models.BooleanField(default=False, blank=True, verbose_name='心胸烦闷', help_text='心胸烦闷')

    menstruation_fu_ruzhang = models.BooleanField(default=False, blank=True, verbose_name='乳房胀痛', help_text='乳房胀痛')

    menstruation_fu_xiongzhang = models.BooleanField(default=False, blank=True, verbose_name='胸胁胀痛', help_text='胸胁胀痛')

    menstruation_fu_zhui = models.BooleanField(default=False, blank=True, verbose_name='小腹坠胀', help_text='小腹坠胀')

    menstruation_fu_ci = models.BooleanField(default=False, blank=True, verbose_name='小腹刺痛', help_text='小腹刺痛')

    menstruation_fu_zhang = models.BooleanField(default=False, blank=True, verbose_name='小腹胀痛', help_text='小腹胀痛')

    menstruation_fu_leng = models.BooleanField(default=False, blank=True, verbose_name='小腹冷痛', help_text='小腹冷痛')

    menstruation_fu_yin = models.BooleanField(default=False, blank=True, verbose_name='小腹隐痛', help_text='小腹隐痛')

    menstruation_fu_ju = models.BooleanField(default=False, blank=True, verbose_name='疼痛拒按', help_text='疼痛拒按')

    menstruation_fu_xi = models.BooleanField(default=False, blank=True, verbose_name='腹痛喜按', help_text='腹痛喜按')

    menstruation_fu_dere = models.BooleanField(default=False, blank=True, verbose_name='腹痛得热痛减', help_text='腹痛得热痛减')

    menstruation_fu_jian = models.BooleanField(default=False, blank=True, verbose_name='血块下痛减', help_text='血块下痛减')

    menstruation_fu_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='胸腹-其他', help_text='胸腹-其他')

    menstruation_shi_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_shi_exin = models.BooleanField(default=False, blank=True, verbose_name='脘闷恶心', help_text='脘闷恶心')

    menstruation_shi_fuzhang = models.BooleanField(default=False, blank=True, verbose_name='脘腹胀满', help_text='脘腹胀满')

    menstruation_shi_shiyu = models.BooleanField(default=False, blank=True, verbose_name='食欲不佳', help_text='食欲不佳')

    menstruation_shi_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='饮食-其他', help_text='饮食-其他')

    menstruation_sleep_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_sleep_duo = models.BooleanField(default=False, blank=True, verbose_name='多梦', help_text='多梦')

    menstruation_sleep_yi = models.BooleanField(default=False, blank=True, verbose_name='易醒', help_text='易醒')

    menstruation_sleep_nan = models.BooleanField(default=False, blank=True, verbose_name='难以入眠', help_text='难以入眠')

    menstruation_sleep_che = models.BooleanField(default=False, blank=True, verbose_name='彻夜难眠', help_text='彻夜难眠')

    menstruation_sleep_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='睡眠-其他', help_text='睡眠-其他')

    menstruation_bian_zc = models.BooleanField(default=False, blank=True, verbose_name='正常', help_text='正常')

    menstruation_bian_zao = models.BooleanField(default=False, blank=True, verbose_name='大便燥结', help_text='大便燥结')

    menstruation_bian_tang = models.BooleanField(default=False, blank=True, verbose_name='大便溏薄', help_text='大便溏薄')

    menstruation_bian_gan = models.BooleanField(default=False, blank=True, verbose_name='时干时稀', help_text='时干时稀')

    menstruation_bian_xie = models.BooleanField(default=False, blank=True, verbose_name='泄泻', help_text='泄泻')

    menstruation_bian_pin = models.BooleanField(default=False, blank=True, verbose_name='小便频数', help_text='小便频数')

    menstruation_bian_duan = models.BooleanField(default=False, blank=True, verbose_name='小便短赤', help_text='小便短赤')

    menstruation_bian_qing = models.BooleanField(default=False, blank=True, verbose_name='小便清长', help_text='小便清长')

    menstruation_bian_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='二便-其他', help_text='二便-其他')

    DAIXIA_LIANG_CHOICES = (
        ('带下量正常', '带下量正常'),
        ('带下量少', '带下量少'),
        ('带下量多', '带下量多')
    )
    daixia_liang = models.CharField(choices=DAIXIA_LIANG_CHOICES, max_length=8, null=True, blank=True, verbose_name='平素带下-量', help_text='平素带下-量')

    DAIXIA_SE_CHOICES = (
        ('带下透明', '带下透明'),
        ('带下色黄', '带下色黄'),
        ('带下色白', '带下色白'),
        ('带下色黄绿', '带下色黄绿'),
    )
    daixia_se = models.CharField(choices=DAIXIA_SE_CHOICES, max_length=8, null=True, blank=True, verbose_name='平素带下-色', help_text='平素带下-色')

    daixia_se_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='平素带下-色', help_text='平素带下-色')

    DAIXIA_ZHI_CHOICES = (
        ('带下质黏而不稠', '带下质黏而不稠'),
        ('带下质清稀', '带下质清稀'),
        ('带下质稠', '带下质稠'),
    )
    daixia_zhi = models.CharField(choices=DAIXIA_ZHI_CHOICES, max_length=10, null=True, blank=True, verbose_name='平素带下-质', help_text='平素带下-质')

    daixia_zhi_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='平素带下-质-其他', help_text='平素带下-质-其他')

    MARRIAGE_CHOICES = (
        ('未婚有性生活', '未婚有性生活'),
        ('已婚同居', '已婚同居'),
        ('已婚分居', '已婚分居'),
        ('再婚', '再婚'),
    )
    marriage = models.CharField(choices=MARRIAGE_CHOICES, max_length=10, null=True, blank=True, verbose_name='婚姻史', help_text='婚姻史')

    marriage_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='婚姻史-其他', help_text='婚姻史-其他')

    person_history_wu = models.BooleanField(default=False, blank=True, verbose_name='无特殊', help_text='无特殊')

    person_history_xi = models.BooleanField(default=False, blank=True, verbose_name='吸烟', help_text='吸烟')

    person_history_yin = models.BooleanField(default=False, blank=True, verbose_name='饮酒', help_text='饮酒')

    person_history_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='个人史-其他', help_text='个人史-其他')

    person_ji_wu = models.BooleanField(default=False, blank=True, verbose_name='无', help_text='无')

    person_ji_fu = models.BooleanField(default=False, blank=True, verbose_name='附睾炎', help_text='附睾炎')

    person_ji_jing = models.BooleanField(default=False, blank=True, verbose_name='精囊炎', help_text='精囊炎')

    person_ji_qian = models.BooleanField(default=False, blank=True, verbose_name='前列腺炎', help_text='前列腺炎')

    person_ji_tang = models.BooleanField(default=False, blank=True, verbose_name='糖尿病', help_text='糖尿病')

    person_ji_kang = models.BooleanField(default=False, blank=True, verbose_name='甲亢', help_text='甲亢')

    person_ji_jian = models.BooleanField(default=False, blank=True, verbose_name='甲减', help_text='甲减')

    person_ji_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='既往史-其他', help_text='既往史-其他')

    person_has_born = models.BooleanField(default=False, blank=True, verbose_name='是否生育过', help_text='是否生育过')

    PERSON_CHECK_CHOICES = (
        ('未做', '未做'),
        ('正常', '正常'),
        ('异常（精子数目、精子活动力、畸形精子率）', '异常（精子数目、精子活动力、畸形精子率）')
    )
    person_check = models.CharField(choices=PERSON_CHECK_CHOICES, max_length=25, null=True, blank=True, verbose_name='精液检查', help_text='精液检查')

    total_times = models.IntegerField(null=True, blank=True, verbose_name='孕', help_text='孕')

    times_shun = models.IntegerField(null=True, blank=True, verbose_name='顺产', help_text='顺产')

    times_pou = models.IntegerField(null=True, blank=True, verbose_name='剖宫产', help_text='剖宫产')

    times_zao = models.IntegerField(null=True, blank=True, verbose_name='早产', help_text='早产')

    times_yao = models.IntegerField(null=True, blank=True, verbose_name='药物流产', help_text='药物流产')

    times_ren = models.IntegerField(null=True, blank=True, verbose_name='人工流产', help_text='人工流产')

    times_zi = models.IntegerField(null=True, blank=True, verbose_name='自然流产', help_text='自然流产')

    times_qing = models.IntegerField(null=True, blank=True, verbose_name='清宫术', help_text='清宫术')

    times_yi = models.IntegerField(null=True, blank=True, verbose_name='异位妊娠', help_text='异位妊娠')

    biyun_wu = models.BooleanField(default=False, blank=True, verbose_name='无', help_text='无')

    biyun_an = models.BooleanField(default=False, blank=True, verbose_name='安全期', help_text='安全期')

    biyun_bi = models.BooleanField(default=False, blank=True, verbose_name='避孕套', help_text='避孕套')

    biyun_kou = models.BooleanField(default=False, blank=True, verbose_name='口服避孕药', help_text='口服避孕药')

    biyun_gong = models.BooleanField(default=False, blank=True, verbose_name='宫内节育器', help_text='宫内节育器')

    FAMILY_ZIRAN_CHOICES = (
        ('有', '有'),
        ('无', '无'),
        ('不详', '不详')
    )
    family_ziran = models.CharField(choices=FAMILY_ZIRAN_CHOICES, max_length=4, null=True, blank=True, verbose_name='家族内(外/祖母、母亲、姐妹)自然流产史', help_text='家族内(外/祖母、母亲、姐妹)自然流产史')

    IS_FAMILY_ZIRAN_CHOICES = (
        ('1次', '1次'),
        ('2次', '2次'),
        ('≥3次', '≥3次'),
        ('不详', '不详')
    )
    is_family_ziran = models.CharField(choices=IS_FAMILY_ZIRAN_CHOICES, max_length=4, null=True, blank=True, verbose_name='自然流产史-有', help_text='自然流产史-有')

    family_qita = models.CharField(choices=FAMILY_ZIRAN_CHOICES, max_length=4, null=True, blank=True, verbose_name='其他疾病史', help_text='其他疾病史')

    family_qita_duo = models.BooleanField(default=False, blank=True, verbose_name='多囊卵巢综合征', help_text='多囊卵巢综合征')

    family_qita_gao = models.BooleanField(default=False, blank=True, verbose_name='高泌乳素血症', help_text='高泌乳素血症')

    family_qita_zi = models.BooleanField(default=False, blank=True, verbose_name='子宫畸形', help_text='子宫畸形')

    family_qita_jin = models.BooleanField(default=False, blank=True, verbose_name='宫颈机能不全', help_text='宫颈机能不全')

    family_qita_gan = models.BooleanField(default=False, blank=True, verbose_name='干燥综合征', help_text='干燥综合征')

    family_qita_xi = models.BooleanField(default=False, blank=True, verbose_name='系统性红斑狼疮', help_text='系统性红斑狼疮')

    family_qita_feng = models.BooleanField(default=False, blank=True, verbose_name='类风湿性关节炎', help_text='类风湿性关节炎')

    family_qita_qiang = models.BooleanField(default=False, blank=True, verbose_name='强直性脊柱炎', help_text='强直性脊柱炎')

    family_qita_wei = models.BooleanField(default=False, blank=True, verbose_name='未分化结缔组织病', help_text='未分化结缔组织病')

    family_qita_kang = models.BooleanField(default=False, blank=True, verbose_name='抗磷脂抗体综合征', help_text='抗磷脂抗体综合征')

    family_qita_jiakang = models.BooleanField(default=False, blank=True, verbose_name='甲亢', help_text='甲亢')

    family_qita_jiajian = models.BooleanField(default=False, blank=True, verbose_name='甲减', help_text='甲减')

    family_qita_tang = models.BooleanField(default=False, blank=True, verbose_name='糖尿病', help_text='糖尿病')

    family_qita_qita = models.CharField(max_length=50, null=True, blank=True, verbose_name='其他疾病史-其他', help_text='其他疾病史-其他')

    def __str__(self):
        return '{}-{}'.format(self.owner, self.info)

    class Meta:
        verbose_name = '病史'
        verbose_name_plural = verbose_name
